#include "preferencesUtil.h"

PreferencesUtil::PreferencesUtil()
{
    //  Serial.println("默认构造函数开始启动。。。");
    prefs.begin(NAMESPSCE_KEY);
}

PreferencesUtil::~PreferencesUtil()
{
    // Serial.println("开始回收PreferencesUtil。。。");
    prefs.end();
}
uint8_t PreferencesUtil::getBlueData()
{
    return prefs.isKey(BLUE_KEY) ?

                                 prefs.getUChar(BLUE_KEY)
                                 :

                                 0;
}

uint8_t PreferencesUtil::getGreenData()
{

    return prefs.isKey(GREEN_KEY) ?

                                  prefs.getUChar(GREEN_KEY)
                                  :

                                  0;
}
uint8_t PreferencesUtil::getRedData()
{
    return prefs.isKey(RED_KEY) ?

                                prefs.getUChar(RED_KEY)
                                :

                                0;
}
uint8_t PreferencesUtil::getLightData()
{
    return prefs.isKey(LIGHT_KEY) ?

                                  prefs.getUChar(LIGHT_KEY)
                                  :

                                  0;
}

String PreferencesUtil::getColorData()
{
    return prefs.isKey(COLORDATA_KEY) ?

                                      prefs.getString(COLORDATA_KEY)
                                      :

                                      "{}";
}

led_chipLet PreferencesUtil::getChipLet()
{
    return (led_chipLet)(prefs.isKey(CHIPLET_KEY) ?

                                                  prefs.getInt(CHIPLET_KEY)
                                                  :

                                                  WS2811);
}

led_mode PreferencesUtil::getLedMode()
{

    return (led_mode)(prefs.isKey(LEDMODE_KEY) ?

                                               prefs.getInt(LEDMODE_KEY)
                                               :

                                               LEDNORMAL);
}
int PreferencesUtil::getLedPixels()
{
   
    return prefs.isKey(LEDPIXELS_KEY) ?

                                      (prefs.getInt(LEDPIXELS_KEY) > 0 ? prefs.getInt(LEDPIXELS_KEY) : 5)
                                      :

                                      5;
}

void PreferencesUtil::setColorData(String color)
{
    prefs.putString(COLORDATA_KEY, color);
}

void PreferencesUtil::setRedData(uint8_t num)
{
    prefs.putUChar(RED_KEY, num);
}
void PreferencesUtil::setGreenData(uint8_t num)
{
    prefs.putUChar(GREEN_KEY, num);
}
void PreferencesUtil::setBlueData(uint8_t num)
{
    prefs.putUChar(BLUE_KEY, num);
}

void PreferencesUtil::setLightData(uint8_t num)
{
    prefs.putUChar(LIGHT_KEY, num);
}
void PreferencesUtil::setChipLet(led_chipLet chiplet)
{

    prefs.putInt(CHIPLET_KEY, chiplet);
}

void PreferencesUtil::setLedMode(led_mode ledmode)
{

    prefs.putInt(LEDMODE_KEY, ledmode);
}
void PreferencesUtil::setLedPixels(int pixels)
{   prefs.putInt(LEDPIXELS_KEY, pixels);
}